package com.xuecheng.api.content;

import com.xuecheng.api.content.model.vo.CourseAuditVO;
import com.xuecheng.api.content.teachplan.dto.TeachplanMediaDTO;
import com.xuecheng.api.media.dto.MediaDTO;
import com.xuecheng.api.media.dto.TeachplanlMediaDTO;
import com.xuecheng.api.media.qo.QueryMediaModel;
import com.xuecheng.api.media.vo.BindTeachplanMediaVO;
import com.xuecheng.api.media.vo.MediaAuidVo;
import com.xuecheng.api.media.vo.MediaVO;
import com.xuecheng.common.domain.page.PageRequestParams;
import com.xuecheng.common.domain.page.PageVO;
import com.xuecheng.common.domain.response.RestResponse;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;

/**
 * <p></p>
 *
 * @Description:
 */
@Api(value = "媒资管理", tags = "媒资管理API",description = "对媒资信息进行管理")
public interface MediaApi {

	//其他代码省略
    
    @ApiOperation("保存媒资信息")
    @ApiImplicitParam(name = "vo", value = "媒资保存信息", required = true, dataType = "MediaVO", paramType = "body")
    MediaDTO createMedia(MediaVO vo);


    /**
     * 分页查询方法
     * @param params 前端传会数据
     * @param model  课程信息
     * @return
     */
    @ApiOperation("分页查询课程基本信息")
    PageVO queryCourseList(PageRequestParams params , QueryMediaModel model);


    @ApiOperation("预览媒资信息功能")
    String previewMedia(Long mediaId);

     @ApiOperation("媒资删除功能")
     void removeMediaById( Long mediaId);


    @ApiOperation("媒资信息查询")
    PageVO queryMediaMList(PageRequestParams params , QueryMediaModel model);

    @ApiOperation("媒资信息审核")
    void approveMedia(MediaAuidVo auditVO);


    @ApiOperation("预览媒资信息-运营")
    String previewMediaOperation(Long mediaId);

    @ApiOperation("根据id查询媒资信息")
    RestResponse getMediaById(Long mediaId);



}